/*
 * utils.c
 *
 *  Created on: 2012-5-3
 *      Author: xugp
 */

#include <stdio.h>
#include <string.h>
#include "utils.h"

char * getparam(char * param,size_t paramlen,int index,int toEnd, char * paramstring){
	int i=0;
	int n=strlen(paramstring);

	int idx=0,startidx=0;
	for(i=0;i<n;i++){
		if(*(paramstring+i)==0x20){
			if(idx==index){
				if(toEnd==0){
					strncpy(param,paramstring+startidx,min(paramlen-1,i-startidx));
				}else{
					strncpy(param,paramstring+startidx,min(paramlen-1,n-startidx));
				}
				break;
			}else{
				idx++;
				i++;
				while(i<n){
					if(*(paramstring+i)==0x20){
						i++;
					}else{
						break;
					}
				}
				startidx=i;
			}
		}
	}
	if(i==n && idx==index){
		if(toEnd==0){
			strncpy(param,paramstring+startidx,min(paramlen-1,i-startidx));
		}else{
			strncpy(param,paramstring+startidx,min(paramlen-1,n-startidx));
		}
	}
	return param;

}

inline char * strlwr(   char*   str   )
{
	char * orig=str;
	for(;*str!='\0';str++)
	  *str=tolower(*str);
	return orig;
}

